Currently, most mobile terminals use an operating system supporting multitasking. While a user is performing an operation on the foreground, another application, such as music playing or downloading from a network, can run on the background. If I/O operation requests (also referred to as I/O requests) corresponding to an application running on the background are frequently submitted, a large quantity of I/O resources are inevitably occupied. However, due to limited I/O resources of a computer system, if a foreground application needs to perform an I/O operation, a response speed of the I/O operation inevitably slows down because excessive I/O resources are occupied by the background application. From a perspective of a user, for example, it takes time to start the foreground application or an operation cannot be completed smoothly. This seriously affects foreground application user experience.
A Linux operating system provides various I/O scheduling policies such as No Operation (NOOP), Deadline, Completely Fair Scheduler (CFQ), and Row for different service scenarios. For example, in some service scenarios, an I/O speed of the entire system is increased by combining I/O operations. However, these scheduling policies provided by the LINUX system still cannot ensure an I/O response speed of a critical application (a foreground application) in a scenario of concurrent I/O requests from a plurality of applications. Because a non-critical application (a background application) may generate a large quantity of I/O requests, and a queue of a scheduler is congested by the I/O requests, an I/O request of the critical application cannot be executed in a timely manner.